/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.epcs.model.dto.google;

import com.epcs.model.dto.google.GoogleReminder;
import com.google.gson.annotations.Expose;
import java.util.List;

/**
 *
 * @author Hà Hải Đăng
 */
public class GoogleEvent {

    @Expose (deserialize=true, serialize=false)
    private String id;
    @Expose (deserialize=true, serialize=false)
    private String calendar_id;
    //Title of the event.
    @Expose (deserialize=true, serialize=true)
    private String summary;
    @Expose (deserialize=true, serialize=true)
    private String description;
    @Expose (deserialize=true, serialize=true)
    private String location;
    /**
     * Status of the event. Optional.
     * Possible values are:
     * "confirmed" - The event is confirmed. This is the default status.
     * "tentative" - The event is tentatively confirmed.
     * "cancelled" - The event is cancelled.
     */
    @Expose (deserialize=true, serialize=true)
    private String status;
    /**
     * Visibility of the event. Optional.
     * Possible values are:
     * "default" - Uses the default visibility for events on the calendar. This is the default value.
     * "public" - The event is public and event details are visible to all readers of the calendar.
     * "private" - The event is private and only event attendees may view event details.
     * "confidential" - The event is private. This value is provided for compatibility reasons.
     */
    @Expose (deserialize=true, serialize=true)
    private String visibility;
    @Expose (deserialize=true, serialize=true)
    private GoogleDateTime start;
    @Expose (deserialize=true, serialize=true)
    private GoogleDateTime end;
    @Expose (deserialize=true, serialize=true)
    private GoogleDateTime originalStartTime;
    @Expose (deserialize=true, serialize=true)
    private int sequence;
    //Last modification time of the event
    @Expose (deserialize=true, serialize=false)
    private String updated;
    @Expose (deserialize=true, serialize=true)
    private List<String> recurrence;
    @Expose(deserialize=true, serialize=true)
	private GoogleReminder reminders;
    
    public GoogleReminder getReminders() {
		return reminders;
	}

	public void setReminders(GoogleReminder reminders) {
		this.reminders = reminders;
	}
    public List<String> getRecurrence() {
        return recurrence;
    }

    public void setRecurrence(List<String> recurrence) {
        this.recurrence = recurrence;
    }


    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getLocation() {
        return location;
    }

    public void setLocation(String location) {
        this.location = location;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getVisibility() {
        return visibility;
    }

    public void setVisibility(String visibility) {
        this.visibility = visibility;
    }

    public GoogleDateTime getEnd() {
        return end;
    }

    public void setEnd(GoogleDateTime end) {
        this.end = end;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public int getSequence() {
        return sequence;
    }

    public void setSequence(int sequence) {
        this.sequence = sequence;
    }

    public GoogleDateTime getStart() {
        return start;
    }

    public void setStart(GoogleDateTime start) {
        this.start = start;
    }

    public String getSummary() {
        return summary;
    }

    public void setSummary(String summary) {
        this.summary = summary;
    }

    public GoogleDateTime getOriginalStartTime() {
        return originalStartTime;
    }

    public void setOriginalStartTime(GoogleDateTime originalStartTime) {
        this.originalStartTime = originalStartTime;
    }

    public String getUpdated() {
        return updated;
    }

    public void setUpdated(String updated) {
        this.updated = updated;
    }

	public String getCalendar_id() {
		return calendar_id;
	}

	public void setCalendar_id(String calendar_id) {
		this.calendar_id = calendar_id;
	}

    
    
}
